package com.github.kotvertolet.youtubejextractor.models.newModels;

import com.google.gson.annotations.SerializedName;
import ohos.utils.Parcel;
import ohos.utils.Sequenceable;

import java.io.Serializable;

public class PlaybackTracking implements Sequenceable, Serializable {


    @SerializedName("videostatsWatchtimeUrl")
    private VideostatsWatchtimeUrl videostatsWatchtimeUrl;

    @SerializedName("videostatsDelayplayUrl")
    private VideostatsDelayplayUrl videostatsDelayplayUrl;

    @SerializedName("qoeUrl")
    private QoeUrl qoeUrl;

    @SerializedName("youtubeRemarketingUrl")
    private YoutubeRemarketingUrl youtubeRemarketingUrl;

    @SerializedName("googleRemarketingUrl")
    private GoogleRemarketingUrl googleRemarketingUrl;

    @SerializedName("setAwesomeUrl")
    private SetAwesomeUrl setAwesomeUrl;

    @SerializedName("videostatsPlaybackUrl")
    private VideostatsPlaybackUrl videostatsPlaybackUrl;

    @SerializedName("ptrackingUrl")
    private PtrackingUrl ptrackingUrl;

    @SerializedName("atrUrl")
    private AtrUrl atrUrl;



    public static final Sequenceable.Producer<PlaybackTracking> CREATOR = new Producer<PlaybackTracking>() {
        @Override
        public PlaybackTracking createFromParcel(Parcel parcel) {
            // Initialize an instance first, then do customized unmarshlling.
            PlaybackTracking playbackTracking = new PlaybackTracking();
            playbackTracking.unmarshalling(parcel);
            return playbackTracking;
        }
    };


    @Override
    public boolean marshalling(Parcel parcel) {
        parcel.writeSequenceable(this.videostatsWatchtimeUrl);
        parcel.writeSequenceable(this.videostatsDelayplayUrl);
        parcel.writeSequenceable(this.qoeUrl);
        parcel.writeSequenceable(this.youtubeRemarketingUrl);
        parcel.writeSequenceable(this.googleRemarketingUrl);
        parcel.writeSequenceable(this.setAwesomeUrl);
        parcel.writeSequenceable(this.videostatsPlaybackUrl);
        parcel.writeSequenceable(this.ptrackingUrl);
        parcel.writeSequenceable(this.atrUrl);
        return true;
    }

    @Override
    public boolean unmarshalling(Parcel parcel) {
        parcel.readSequenceable(this.videostatsWatchtimeUrl);
        parcel.readSequenceable(this.videostatsDelayplayUrl);
        parcel.readSequenceable(this.qoeUrl);
        parcel.readSequenceable(this.youtubeRemarketingUrl);
        parcel.readSequenceable(this.googleRemarketingUrl);
        parcel.readSequenceable(this.setAwesomeUrl);
        parcel.readSequenceable(this.videostatsPlaybackUrl);
        parcel.readSequenceable(this.ptrackingUrl);
        parcel.readSequenceable(this.atrUrl);
        return true;
    }


    @Override
    public String toString() {
        return "PlaybackTracking{" +
                "videostatsWatchtimeUrl=" + videostatsWatchtimeUrl +
                ", videostatsDelayplayUrl=" + videostatsDelayplayUrl +
                ", qoeUrl=" + qoeUrl +
                ", youtubeRemarketingUrl=" + youtubeRemarketingUrl +
                ", googleRemarketingUrl=" + googleRemarketingUrl +
                ", setAwesomeUrl=" + setAwesomeUrl +
                ", videostatsPlaybackUrl=" + videostatsPlaybackUrl +
                ", ptrackingUrl=" + ptrackingUrl +
                ", atrUrl=" + atrUrl +
                '}';
    }

    public VideostatsWatchtimeUrl getVideostatsWatchtimeUrl() {
        return videostatsWatchtimeUrl;
    }

    public void setVideostatsWatchtimeUrl(VideostatsWatchtimeUrl videostatsWatchtimeUrl) {
        this.videostatsWatchtimeUrl = videostatsWatchtimeUrl;
    }

    public VideostatsDelayplayUrl getVideostatsDelayplayUrl() {
        return videostatsDelayplayUrl;
    }

    public void setVideostatsDelayplayUrl(VideostatsDelayplayUrl videostatsDelayplayUrl) {
        this.videostatsDelayplayUrl = videostatsDelayplayUrl;
    }

    public QoeUrl getQoeUrl() {
        return qoeUrl;
    }

    public void setQoeUrl(QoeUrl qoeUrl) {
        this.qoeUrl = qoeUrl;
    }

    public YoutubeRemarketingUrl getYoutubeRemarketingUrl() {
        return youtubeRemarketingUrl;
    }

    public void setYoutubeRemarketingUrl(YoutubeRemarketingUrl youtubeRemarketingUrl) {
        this.youtubeRemarketingUrl = youtubeRemarketingUrl;
    }

    public GoogleRemarketingUrl getGoogleRemarketingUrl() {
        return googleRemarketingUrl;
    }

    public void setGoogleRemarketingUrl(GoogleRemarketingUrl googleRemarketingUrl) {
        this.googleRemarketingUrl = googleRemarketingUrl;
    }

    public SetAwesomeUrl getSetAwesomeUrl() {
        return setAwesomeUrl;
    }

    public void setSetAwesomeUrl(SetAwesomeUrl setAwesomeUrl) {
        this.setAwesomeUrl = setAwesomeUrl;
    }

    public VideostatsPlaybackUrl getVideostatsPlaybackUrl() {
        return videostatsPlaybackUrl;
    }

    public void setVideostatsPlaybackUrl(VideostatsPlaybackUrl videostatsPlaybackUrl) {
        this.videostatsPlaybackUrl = videostatsPlaybackUrl;
    }

    public PtrackingUrl getPtrackingUrl() {
        return ptrackingUrl;
    }

    public void setPtrackingUrl(PtrackingUrl ptrackingUrl) {
        this.ptrackingUrl = ptrackingUrl;
    }

    public AtrUrl getAtrUrl() {
        return atrUrl;
    }

    public void setAtrUrl(AtrUrl atrUrl) {
        this.atrUrl = atrUrl;
    }
}
